home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / pc / LOGIC Apple II 5.25" Library - DOS Part 3 / DOS077A.dsk / BACKWARD MEMORY MOVE.bas < prev    next >
BASIC Source File  |  2012-02-16  |  1KB  |  22 lines

  1. 10  REM <CTRL-J><CTRL-M>    BACKWARDS MEMORY MOVE<CTRL-J><CTRL-M>      BY LEE REYNOLDS<CTRL-J><CTRL-M>  CALL -APPLE * JUL/AUG 1980<CTRL-J>
  2. 100  REM <CTRL-J><CTRL-M>STORE BACKWARDS MEM MOVE ROUTINE<CTRL-J>
  3. 110 A$ = "300:84 47 A0 00 B1 3C 91 42 A5 42 D0 02 C6 43 C6 42 A5 3E C5 3C A5 3F E5 3D A5 3C D0 02 C6 3D C6 3C 90 E2 A4 47 60 N D823G"
  4. 120  FOR I = 1 TO  LEN(A$): POKE 511 +I, ASC( MID$ (A$,I,1)) +128: NEXT I
  5. 130  POKE 72,0: CALL  -144
  6. 140  REM <CTRL-J><CTRL-M>FOLLOWING ROUTINE SAVES Y REG.,<CTRL-M>CLEARS IT, CALLS MONITOR MEMORY<CTRL-M>MOVE ROUTINE, RESTORES Y REG.<CTRL-J>
  7. 150 A$ = "325:84 47 A0 00 20 2C FE A4 47 60 N D823G"
  8. 160  FOR I = 1 TO  LEN(A$): POKE 511 +I, ASC( MID$ (A$,I,1)) +128: NEXT I
  9. 170  POKE 72,0: CALL  -144
  10. 180  REM  GET SOURCE, DESTINATION OF MOVE
  11. 190  INPUT "SOURCE BEGIN ADDR.?";T1: INPUT "SOURCE END ADDR.?";T2: INPUT "DESTINATION BEGIN ADDR.?";T3
  12. 200 T = T3 >T1  AND T3 <T2: REM  TEST WHETHER BACKWARDS MOVE NECESSARY
  13. 210 MOVE = 805: IF   NOT T  THEN 240: REM   ELSE USE MONITOR'S MEM. MOVE
  14. 220  REM  SINCE BACKWARD MOVE, MODIFY T1, T2, T3
  15. 230 T = T1:T1 = T2:T2 = T:T3 = T3 +T1 -T2:MOVE = 768
  16. 240  GOSUB 250: END : REM DO THE MEM MOVE<CTRL-J>
  17. 250  REM <CTRL-J><CTRL-M>MEM MOVE ROUTINE<CTRL-J>
  18. 260 T =  INT(T1/256): POKE 61,T: POKE 60,T1 -256 *T
  19. 270 T =  INT(T2/256): POKE 63,T: POKE 62,T2 -256 *T
  20. 280 T =  INT(T3/256): POKE 67,T: POKE 66,T3 -256 *T
  21. 290  PRINT  PEEK(60), PEEK(61): PRINT  PEEK(62), PEEK(63): PRINT  PEEK(66), PEEK(67)
  22. 300  CALL MOVE: RETURN